package com.dingreading.cloud.soms.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 实体类。
 *
 * @author Administrator
 * @since 2023-11-22
 */
@Data
@Table(value = "ca_class_member")
public class CaClassMember implements Serializable {

    @Id(keyType = KeyType.Auto)
    private Long id;

    /**
     * 公司uid
     */
    private String corpUid;

    /**
     * 门店uid
     */
    private String storeUid;

    /**
     * 门店名称
     */
    private String storeName;

    /**
     * 社团id
     */
    private Long classId;

    /**
     * 社团uid
     */
    private String classUid;

    /**
     * 服务uid
     */
//    @ApiModelProperty(value = "服务uid")
//    private String projectUid;

    /**
     * 服务项目名称
     */
//    @ApiModelProperty(value = "服务项目名称")
//    private String productName;

    /**
     * 服务阶段uid
     */
//    @ApiModelProperty(value = "服务阶段uid")
//    private String stageUid;

    /**
     * 服务项目阶段名称
     */
//    @ApiModelProperty(value = "服务项目名称")
//    private String stageName;

    /**
     * 会员uid
     */
    private String memberUid;

    /**
     * 会员真实全名
     */
    private String fullName;

    /**
     * 会员系统名称
     */
    private String memberName;

    /**
     * 会员昵称
     */
    private String nickName;

    /**
     * 会员联系电话
     */
    private String mob;

    /**
     * 年级，每年自动增长，可以手动调整
     */
    private Integer grade;

    /**
     * 剩余课次数量
     */
    private Integer leftLessonCnt;

    /**
     * 导读员姓名集合
     */
    private String staffNames;

    /**
     * 是否禁用
     * 1.启用 0.禁用
     */
    private Integer enabled;

    /**
     * 创建人uid
     */
    private String addStaffUid;

    /**
     * 创建人姓名
     */
    private String addStaffName;

    /**
     * 更新人uid
     */
    private String lastStaffUid;

    /**
     * 更新人姓名
     */
    private String lastStaffName;

    /**
     * 添加时间
     */
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @Column(onInsertValue = "now()")
    private Date addTime;

    /**
     * 更新时间
     */
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @Column(onInsertValue = "now()", onUpdateValue = "now()")
    private Date editTime;

}
